#define _CRT_SECURE_NO_WARNINGS  1
#include<iostream>
using namespace std;

#include"queue.h"
#include"stack.h"


void test_stack()
{
    lsh::stack<int,list<int>> s1;
    s1.push(1);
    s1.push(2);
    s1.push(6);
    s1.push(6);
    s1.pop();
    s1.pop();
    cout << s1.empty() << endl;

    s1.pop();
    cout << s1.empty() << endl;

    cout << s1.top() << endl;
    cout << s1.size() << endl;

}


void test_queue()
{
    lsh::queue<int, list<int>> q1;
    q1.push(1);
    q1.push(10);
    q1.push(2);
    q1.push(6);
    q1.push(6);
    q1.pop();
    q1.pop();
    cout << q1.empty() << endl;

    cout << q1.empty() << endl;

    cout << q1.front() << endl;
    cout << q1.back() << endl;
    cout << q1.size() << endl;

}


int main()
{
   // test_stack();
    test_queue();
}